

// 1 写功能
// 2 定义空函数
// 3 将1放到2中
// 4 微调
/**
    * 仿JSON内置API parse方法
    * @param {String} javaData JSON数据格式
    * @returns Object
    */

//json格式转对象
function jsongeshi() {
    let jsongeshi = '{"a":1,"b":"json对象"}'
    //定义一个空数组
    var arr = []
    //去掉双引号，大括号
    jsongeshi = jsongeshi.replace(/{|}|"|\s/g, '')
    //转成数组
    let shuzu = jsongeshi.split(',')
    //遍历获取每个item
    shuzu.forEach(function (item, i) {
        let arr1 = item.split(':')
        // console.log(arr1[0])
        let key = arr1[0]
        let value = arr1[1]
        // console.log(value)
        //判断数值类型
        if (Number(value)) {
            value1 = Number(value)
            arr[key] = value1
        } else {
            arr[key] = value
        }
    })
    return arr
}
console.log(jsongeshi());


/**
* 仿JSON内置API stringify方法
 * @param {Object} webObj JS标准普通对象
 * @returns String
 */

//转json

function stringify(webObj) {
    let obj = { a: 1, b: 'json对象' }
    //定义一个空数组
    var arr = []
    //循环对象
    for (let key in obj) {
        let temp = `"${key}":"${obj[key]}"`
        arr.push(temp)
    }
    return `{${arr.join(',')}}`
}













